Many devices represent colors of image elements to users for a variety of purposes. These purposes may typically include representing colors of image elements by a device on a display and/or in print. When a given device represents colors to a user, the device typically employs a color space to define each displayed and/or printed color numerically. The color space of a given device defines the total range of colors reproducible by that device. Typically, the color space of a given device does not encompass all possible colors and is therefore only a subset of all possible colors. As the color space of a given device is typically only a subset of all possible colors, different types of devices, different device models, and/or different manufactures may use varying color spaces.
A given color may be specified or represented in the form of one or more color components, which may be thought of as dimensions in a color space. Each color component may have a numerical color component value and together the color component values may provide information to generate a desired color on an output device. A color space may define the interpretation of the color component values used to represent a color. Examples of color spaces are RGB (Red, Green and Blue) and CMYK (Cyan, Magenta, Yellow and Black). For many color spaces, a color may be represented by one to four numbers, one for each dimension or component of the color space.
Different output devices often use different color spaces to represent colors, often resulting in the conversion of colors between different color spaces. It may be challenging to accurately represent each displayed and/or printed color numerically as color data in the device color space, so that the colors appear accurate to the eye of a user. For example, the transfer of color data from one device color space to another device color space may result in inaccurate color representation if the color spaces of the devices are not the same.
Color management often may be used to facilitate the transfer of color data from one device color space to another different device color space. Color management may typically be performed via a color management system (CMS), which may be used to reduce or eliminate color space matching problems and makes color portable. A CMS may reconcile the different color capabilities of scanners, monitors, and/or printers to ensure consistent color throughout the transfer of color data between various devices. For example, the colors displayed on a monitor may be accurately transferred to a printer. Similarly, color management may permit different applications, devices, and/or operating systems to display colors consistently.
A frequently used method in color management for converting color component values from a source color space to a destination color space may include the use of a multi-dimensional color lookup table. The color lookup table may contain a set of reference colors in the source color space, and corresponding mappings to reference colors in the destination color space. For example, if the source color space is L*a*b* (luminance, red/blue chrominance and yellow/blue chrominance) and the destination color space is CMYK (Cyan, Magenta, Yellow and Black), a CMYK output color values corresponding to an L*a*b* input color values may be obtained by looking up the L*a*b* input color value in an L*a*b* to CMYK lookup table.
In some cases, the reference colors in a color lookup table may not include all possible input colors. The output color values for input color values that are not reference colors may often be obtained by interpolating among the existing reference colors in the various lookup table dimensions. During the interpolation process the output color values for input color values that are not reference colors may be estimated based on known reference colors in the color lookup table.
Input shaper curves may be applied to input color values prior to the color lookup table. These input shaper curves may be used to linearize device characteristics such as dot gain. In some cases, fixed S-shaped shaper curves may be applied to the “a” and “b” channels in L*a*b* to CMYK conversions.
Reference is made in the following detailed description to the accompanying drawings, which form a part hereof, wherein like numerals may designate like parts throughout to indicate corresponding or analogous elements. It will be appreciated that for simplicity and/or clarity of illustration, elements illustrated in the figures have not necessarily been drawn to scale. For example, the dimensions of some of the elements may be exaggerated relative to other elements for clarity. Further, it is to be understood that other embodiments may be utilized and structural and/or logical changes may be made without departing from the scope of claimed subject matter. It should also be noted that directions and references, for example, up, down, top, bottom, and so on, may be used to facilitate the discussion of the drawings and are not intended to restrict the application of claimed subject matter. Therefore, the following detailed description is not to be taken in a limiting sense and the scope of claimed subject matter defined by the appended claims and their equivalents.